package com.xtoad.ecms.baseinfo.service;

import com.xtoad.ecms.baseinfo.dto.WebPageDTO;

import java.util.List;

/**
 * 页面类Service
 *
 * @author xtoad
 * @date 2021/01/18
 */
public interface IWebPageService {

    /**
     * 根据id查询页面类
     *
     * @param id 页面类id
     * @return 查询结果
     */
    WebPageDTO getWebPageById(final Long id);

    /**
     * 查询全部页面类，不分页
     *
     * @return 查询结果
     */
    List<WebPageDTO> getAllWebPage();

    /**
     * 新增页面类
     *
     * @param webPageDTO 保存对象
     * @return 新增结果
     */
    WebPageDTO insert(final WebPageDTO webPageDTO);

    /**
     * 删除页面类
     *
     * @param id 删除对象id
     */
    void deleteById(final Long id);

    /**
     * 删除页面类
     *
     * @param webPageDTO 删除对象
     */
    void delete(final WebPageDTO webPageDTO);

    /**
     * 更新页面类
     *
     * @param webPageDTO 更新对象
     * @return 更新结果
     */
    WebPageDTO update(final WebPageDTO webPageDTO);

    /**
     * 批量新增页面类
     *
     * @param webPageDTOList 新增对象
     * @return 新增结果
     */
    List<WebPageDTO> batchInsert(final List<WebPageDTO> webPageDTOList);

    /**
     * 批量删除页面类
     *
     * @param webPageDTOList 删除对象
     */
    void batchDelete(final List<WebPageDTO> webPageDTOList);

    /**
     * 批量更新页面类
     *
     * @param webPageDTOList 更新对象
     * @return 更新结果
     */
    List<WebPageDTO> batchUpdate(final List<WebPageDTO> webPageDTOList);

}
